The Agent back end,
nnagent, doesn't handle expiry. Well, at least it
doesn't handle it like other back ends. Instead, there are
special gnus-agent-expire and
gnus-agent-expire-group commands that will expire
all read articles that are older than
gnus-agent-expire-days days. They can be run
whenever you feel that you're running out of space. Neither are
particularly fast or efficient, and it's not a particularly good
idea to interrupt them (with C-g or anything else)
once you've started one of them.
Note that other functions, e.g.
gnus-request-expire-articles, might run
gnus-agent-expire for you to keep the agent
synchronized with the group.
The agent parameter agent-enable-expiration may
be used to prevent expiration in selected groups.
If
gnus-agent-expire-all is non-nil, the
agent expiration commands will expire all articles—unread,
read, ticked and dormant. If nil (which is the
default), only read articles are eligible for expiry, and unread,
ticked and dormant articles will be kept indefinitely.
If you find that some articles eligible for expiry are never
expired, perhaps some Gnus Agent files are corrupted. There's are
special commands, gnus-agent-regenerate and
gnus-agent-regenerate-group, to fix possible
problems.